home *** CD-ROM | disk | FTP | other *** search
- /* Project: unnamed */
-
- /* Includes */
-
- #include <exec/types.h>
- #include <exec/lists.h>
- #include <intuition/intuition.h>
- #include <libraries/intuisup.h>
- #ifdef AZTEC_C
- #include <functions.h>
- #endif
- #ifdef LATTICE
- #include <proto/all.h>
- #endif
-
- /* Defines and data for window */
-
- #define RENDER_INFO_FLAGS 3
- #define OPEN_WINDOW_FLAGS 0
-
- #define WINDOW_LEFT_EDGE 98
- #define WINDOW_TOP_EDGE 123
- #define WINDOW_WIDTH 510
- #define WINDOW_HEIGHT 132
-
- STATIC struct NewWindow test_new_window = {
- WINDOW_LEFT_EDGE, WINDOW_TOP_EDGE, WINDOW_WIDTH, WINDOW_HEIGHT,
- 0, 1,
- CLOSEWINDOW | MENUPICK | GADGET_IDCMP_FLAGS_ALL,
- WINDOWDRAG | WINDOWDEPTH | WINDOWSIZING | RMBTRAP,
- NULL, NULL,
- (UBYTE *)"",
- NULL, NULL,
- 100, 20, -1, -1,
- WBENCHSCREEN
- };
- /* Defines and data for borders */
-
- #define TEST_BORDER_BORDER1 0
- #define TEST_BORDER_BORDER2 1
- #define TEST_BORDER_BORDER3 2
- #define TEST_BORDER_BORDER4 3
-
- STATIC struct BorderData test_border_data[] = {
- {
- 4, 273, 33, 87, 25
- }, {
- 2, 275, 106, 95, 21
- }, {
- 1, 397, 112, 97, 15
- }, {
- 3, 374, 6, 63, 14
- }, {
- INTUISUP_DATA_END
- }
- };
- /* Data for fonts */
-
- STATIC struct TextAttr test_text_attr[] = {
- {
- (STRPTR)"topaz.font", 8, FS_NORMAL, FPF_ROMFONT
- }, {
- (STRPTR)"topaz.font", 9, FS_NORMAL, FPF_ROMFONT
- }
- };
- /* Defines and data for texts */
-
- #define TEST_TEXT_TEXT1 0
- #define TEST_TEXT_TEXT2 1
- #define TEST_TEXT_TEXT3 2
-
- STATIC struct TextData test_text_data[] = {
- {
- 1, 6, 291, 40,
- "Laber", &test_text_attr[1]
- }, {
- 1, 65, 302, 92,
- "Humbug", &test_text_attr[1]
- }, {
- 1, 128, 40, 112,
- "Blubber", &test_text_attr[0]
- }, {
- INTUISUP_DATA_END
- }
- };
- /* Defines and data for gadgets */
-
- #define TEST_GADGET_GADGET1 0
- #define TEST_GADGET_GADGET2 1
- #define TEST_GADGET_GADGET3 2
- #define TEST_GADGET_GADGET4 3
- #define TEST_GADGET_GADGET5 4
- #define TEST_GADGET_GADGET6 5
- #define TEST_GADGET_GADGET7 6
- #define TEST_GADGET_GADGET8 7
- #define TEST_GADGET_GADGET9 8
- #define TEST_GADGET_GADGET10 9
- #define TEST_GADGET_GADGET11 10
-
- IMPORT struct List test_gadget1_list;
- STATIC struct Node test_gadget1_node[] = {
- {
- &test_gadget1_node[1], (struct Node *)&test_gadget1_list.lh_Head, 0, 0,
- "Entry 1"
- }, {
- &test_gadget1_node[2], &test_gadget1_node[0], 0, 0,
- "Entry 2"
- }, {
- &test_gadget1_node[3], &test_gadget1_node[1], 0, 0,
- "Entry 3"
- }, {
- &test_gadget1_node[4], &test_gadget1_node[2], 0, 0,
- "Entry 4"
- }, {
- &test_gadget1_node[5], &test_gadget1_node[3], 0, 0,
- "Entry 5"
- }, {
- &test_gadget1_node[6], &test_gadget1_node[4], 0, 0,
- "Entry 6"
- }, {
- &test_gadget1_node[7], &test_gadget1_node[5], 0, 0,
- "Entry 7"
- }, {
- &test_gadget1_node[8], &test_gadget1_node[6], 0, 0,
- "Entry 8"
- }, {
- &test_gadget1_node[9], &test_gadget1_node[7], 0, 0,
- "Entry 9"
- }, {
- &test_gadget1_node[10], &test_gadget1_node[8], 0, 0,
- "Entry 10"
- }, {
- &test_gadget1_node[11], &test_gadget1_node[9], 0, 0,
- "Entry 11"
- }, {
- (struct Node *)&test_gadget1_list.lh_Tail, &test_gadget1_node[10], 0, 0,
- "Entry 12"
- }
- };
- /* STATIC */ struct List test_gadget1_list = {
- &test_gadget1_node[0], NULL,
- &test_gadget1_node[11], 0, 0
- };
- STATIC BYTE *test_gadget5_text_array[] = {
- "MX1",
- "MX2",
- "MX3",
- "MX4",
- NULL
- };
- STATIC BYTE *test_gadget10_text_array[] = {
- "Cycle",
- "Test 1",
- "Test 2",
- "Test 3",
- "Test 4",
- "Test 5",
- NULL
- };
- STATIC struct GadgetData test_gadget_data[] = {
- {
- 10, 1296, 13, 20, 107, 44,
- "List_view", &test_text_attr[0],
- { 0, 0, &test_gadget1_list }
- }, {
- 11, 272, 144, 19, 100, 35,
- "_Palette", &test_text_attr[1],
- { 2, 0, (VOID *)2 }
- }, {
- 1, 16, 266, 6, 91, 20,
- "_Button", &test_text_attr[1],
- { 0, 0, (VOID *)0 }
- }, {
- 2, 1104, 424, 26, 21, 11,
- "_Check", &test_text_attr[0],
- { 1, 0, (VOID *)0 }
- }, {
- 3, 144, 388, 57, 72, 47,
- "_Radio", &test_text_attr[1],
- { 1, 0, &test_gadget5_text_array[0] }
- }, {
- 4, 1104, 205, 83, 76, 14,
- "_String", &test_text_attr[0],
- { 10, 0, "String" }
- }, {
- 5, 144, 136, 62, 44, 14,
- "_Integer", &test_text_attr[0],
- { 10, 0, (VOID *)123 }
- }, {
- 6, 528, 299, 64, 64, 11,
- "Sli_der", &test_text_attr[0],
- { 0, 10, (VOID *)5 }
- }, {
- 7, 280, 473, 26, 18, 62,
- "Scro_ller", &test_text_attr[0],
- { 2, 10, (VOID *)5 }
- }, {
- 8, 272, 20, 89, 97, 13,
- "C_ycle", &test_text_attr[1],
- { 0, 0, &test_gadget10_text_array[0] }
- }, {
- 9, 144, 143, 109, 65, 12,
- "C_ount", &test_text_attr[0],
- { 10, 50, (VOID *)30 }
- }, {
- INTUISUP_DATA_END
- }
- };
-
- /* Global var. */
- struct Library *IntuiSupBase;
- APTR ri;
- struct Window* win;
- APTR gl;
-
- /* Protos */
- BOOL test_init(VOID);
- VOID test_close(VOID);
- VOID test_action(VOID);
-
- /* Test program */
-
- LONG
- main(VOID)
- {
-
- if(! test_init())
- {
- test_close();
- return(1L);
- }
-
- IDisplayBorders(ri, win, &test_border_data[0], 0, 0);
- IDisplayTexts(ri, win,&test_text_data[0], 0, 0, NULL);
- IDisplayGadgets(win,gl);
-
- test_action();
-
- test_close();
-
- return(0L);
- }
-
- BOOL test_init(VOID)
- {
- if (!(IntuiSupBase = (struct Library*)OpenLibrary(IntuiSupName,IntuiSupVersion)) )
- return FALSE;
-
- if (!(ri = IGetRenderInfo(NULL, RENDER_INFO_FLAGS)) )
- return FALSE;
-
- if (!(win = IOpenWindow(ri, &test_new_window,OPEN_WINDOW_FLAGS)) )
- return FALSE;
-
- if (!(gl = ICreateGadgets(ri,&test_gadget_data[0], 0, 0, NULL)) )
- return FALSE;
-
- return TRUE;
- }
-
- VOID
- test_close(VOID)
- {
- if(gl) IRemoveGadgets(gl);
- if(gl) IFreeGadgets(gl);
- if(win) ICloseWindow(win, FALSE);
- if(ri) IFreeRenderInfo(ri);
- if(IntuiSupBase) CloseLibrary(IntuiSupBase);
- }
-
- VOID
- test_action(VOID)
- {
- BOOL keepon = TRUE;
-
- do {
- struct IntuiMessage *msg;
-
- WaitPort(win->UserPort);
- while (msg = IGetMsg(win->UserPort)) {
- ULONG Class=msg->Class;
- USHORT Code=msg->Code;
- APTR IAddress=msg->IAddress;
-
- IReplyMsg(msg);
-
- switch(Class)
- {
- case CLOSEWINDOW:
- keepon = FALSE;
- break;
-
- case ISUP_ID:
- switch(Code)
- {
- case TEST_GADGET_GADGET1:
- printf("TEST_GADGET_GADGET1: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET2:
- printf("TEST_GADGET_GADGET2: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET3:
- printf("TEST_GADGET_GADGET3: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET4:
- printf("TEST_GADGET_GADGET4: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET5:
- printf("TEST_GADGET_GADGET5: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET6:
- printf("TEST_GADGET_GADGET6: %s\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET7:
- printf("TEST_GADGET_GADGET7: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET8:
- printf("TEST_GADGET_GADGET8: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET9:
- printf("TEST_GADGET_GADGET9: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET10:
- printf("TEST_GADGET_GADGET10: %ld\n",IAddress);
- break;
-
- case TEST_GADGET_GADGET11:
- printf("TEST_GADGET_GADGET11: %ld\n",IAddress);
- break;
-
- }
- }
- }
- } while (keepon == TRUE);
- }
-